package com.yungu.swift.assets.passenger.model.dto;

import com.yungu.swift.base.model.annotation.AbsoluteImgPath;
import com.yungu.swift.base.model.BaseDto;
import com.yungu.swift.base.model.annotation.Desensitization;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;


/**
 * Copyright © 厦门云谷互联信息有限公司 2018-2020 All Right Reserved
 * <p>
 * 乘客业务DTO
 */
@Data
public class PassengerDto extends BaseDto {

    /**
     * 城市uuid
     **/
    private String cityUuid;

    /**
     * 手机号码
     **/
    @Desensitization(type = Desensitization.DesensitionType.MOBILE)
    private String mobile;

    /**
     * 密码
     **/
    private String password;

    /**
     * 昵称
     **/
    private String nickname;

    /**
     * 性别(1男，2女)
     **/
    private Integer sex;

    /**
     * 头像
     **/
    @AbsoluteImgPath
    private String face;

    /**
     * 开放平台相关ID
     **/
    private String openId;

    /**
     * app用户登录后生成tokenId
     **/
    private String token;

    /**
     * 积分
     **/
    private Integer point;

    /**
     * 乘客成功订单总数
     **/
    private Integer orderCount;

    /**
     * 状态 （1.正常，2.短期封号，3.长期封号）
     **/
    private Integer status;

    /**
     * 终止时间（针对短期封号>status）
     **/
    private Date abortTime;

    /**
     * 封号说明
     **/
    private String abortRemark;

    /**
     * 最后一次登录时间
     **/
    private Date lastLogin;

    /**
     * 推送唯一标识
     **/
    private String pushId;

    /**
     * 设备类型（1.android，2.IOS）
     **/
    private Integer deviceType;

    /**
     * 设备唯一标识
     **/
    private String deviceToken;

    /**
     * 设备版本
     **/
    private String deviceVersion;

    /**
     * 使用的app版本
     **/
    private String appVersion;

    /**
     * 渠道id
     **/
    private String channelUuid;

    /**
     * 是否激活 0未激活1已激活
     **/
    private Integer active;

    //附加字段
    /**
     * 乘客消费总金额
     **/
    private Double consumeMoney;

    /**
     * 优惠券总数
     **/
    private Integer couponCount;

    /**
     * 定位城市名称
     **/
    private String cityName;

    /**
     * 最近下单时间
     **/
    private Date orderTime;

    /**
     * 未支付订单数
     */
    private Integer noPayCount;

    /**
     * 投诉订单量
     **/
    private Integer complantCount;

    /**
     * 消费金额
     **/
    private Double consumptionAmount;
    /**
     * 国家手机号码前缀
     */
    private String countryMobileCode;
    /**
     * 渠道名称
     */
    private String channelName;

    /**
     * 乘客当前所在区域
     */
    private String currentAdCode;

    /**
     * 实充余额
     */
    private BigDecimal presentBalance;
    /**
     * 赠送余额
     */
    private BigDecimal rechargeBalance;

    /**
     * 乘客回访状态 0 未回访 1已回访
     */
    private Integer returnVisitStatus;

    /**
     * 乘客首个跨城订单
     */
    private String firstOrderUuid;

}
